package com.xqq;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;

public class test {
    public static void main(String[] args) {
        // 指定要扫描的目录
        String directoryPath = "F:\\Code\\Code_xwsk\\huanyu-alpha-event";
        File directory = new File(directoryPath);

        // 检查目录是否存在
        if (!directory.exists() || !directory.isDirectory()) {
            System.out.println("指定的目录不存在或不是一个目录: " + directoryPath);
            return;
        }

        // 获取所有符合模式的文件
        File[] files = directory.listFiles((dir, name) ->
                name.startsWith("data_payloads_") && name.endsWith(".txt"));

        if (files == null || files.length == 0) {
            System.out.println("没有找到符合模式的文件");
            return;
        }

        int totalFiles = files.length;
        int matchedFiles = 0;

        System.out.println("开始扫描文件...");
        String  searchString = "dataList";
        for (File file : files) {
            if (containsString(file, searchString)) {
                System.out.println("找到匹配的文件: " + file.getName());
                matchedFiles++;
            }
        }

        System.out.println("\n扫描完成");
        System.out.println("扫描到的文件总数: " + totalFiles);
        System.out.println("包含'"+searchString+"'的文件数: " + matchedFiles);
    }

    /**
     * 检查文件中是否包含指定的字符串
     */
    private static boolean containsString(File file, String searchString) {
        try (BufferedReader reader = new BufferedReader(new FileReader(file))) {
            String line;
            while ((line = reader.readLine()) != null) {
                if (line.contains(searchString)) {
                    return true;
                }
            }
        } catch (IOException e) {
            System.err.println("读取文件时出错: " + file.getName() + " - " + e.getMessage());
        }
        return false;
    }
}
